Localization is the process by which computer software is adapted for non-native environments. More specifically, localization is the process by which computer software is adapted to be as familiar as possible to denizens of a specific, non-native locale, by displaying text in the local language and using local conventions for the display of such objects as units of measurement.
Conventional localization processes make use of a set of technologies that are used to translate software developer/manufacturer products for non-native environments. Such technologies typically include a database file that contains the project definition and localization data. Conventional database files can be based on archaic and unsupported database software. Other limitations of conventional database files include no direct access to project data, poor scalability and limited extensibility. Many conventional localization processes rely on a binary data format for data storage called espresso database (EDB).
Using conventional localization processes, there is no easy way to perform comparisons of product versions in order to determine changes between product versions (what has been fixed, what has been translated) because of the aforementioned binary database storage format. Moreover, if an error or “bug” has been introduced into a file, there is no good way to determine what has changed in the file using the binary database storage format.
Additionally, newer versions of the database software that may be run on machines in the localization network that are different from the one which created the EDB, result in an upgrade of the EDB to a newer version. Older versions of the database software cannot open the newly upgraded EDB. Accordingly, the use of conventional localization processes can prove problematic and inadequate to meet software localization needs.